<mapNodeChildsToLambdaParameters>
	<ideaForThisMapCameFrom>
		<exampleAINetIterface>
			Network does not know what input or output is.
			Network has only 1 function which has no parameters, does 1 time cycle, and returns quantity of nodes left in an unstable state.
			<metaNetworkInterface>
				Input a specific type of network, and it may modify that network by adding or removing nodes.
				For example, in a bayesian network where one node is irrelevant to all the other nodes, that irrelevant node may be removed,
				or nodes with less dependence on their parent may be disconnected from that parent.
			</metaNetworkInterface>
			<useDLambdaFor>
				Network has some number of nodes. Each node connects to specific other nodes,
				and has a number of doubles that depends only on its child count.
				<example>
					For example, if child count is C, number of doubles may equal 5 + C*3 + C^4 + 7*2^C,
					and there is some sequence of DLambda calls that reads and writes 5 + 3 + 1 + 7 doubles at a time
					(or something similar, C^4 doesnt line up with 7*2^C, but does line up with C^4*7*2^C, for example).
					To fix the nonalignment, maybe 7*2^C should be repeated C^4 times, while only the C^4 varies.
					Order of the parts of 5 + C*3 + C^4 + 7*2^C does not matter. 5 + 7*2^C + C^4 + C*3 is the same,
					except for order of parameters in the DLambdas.
					<question>How to do (C^3)^C? 3^C may pair each C with 0, 1, or 2. But what pairs, if any, would work for (C^3)^C?</question>
					<question>3^C may pair (form sets) each C with 0, 1, or 2. But what would C^3 form sets with?</question>
				</example>			
			</useDLambdaFor>
		</exampleAINetIterface>
	</ideaForThisMapCameFrom>
	<listOfVariables>C = child count</listOfOperators>
	<listOfOperators>+ * ^</listOfOperators>
	<goal>
		Define a simple language that describes how many doubles a node should have if it has C childs,
		and chooses how many lambda calls (each on a different set of numbers and/or constants (like T and F for bayesian node)
		to do for that one node with C childs.
		Include some of the doubles from the childs.
	</goal>
	<example>
		<nodeDescription>bayesian node with 4 childs (C=5)</nodeDescription>
		<lambdaCallCount>some multiple of 5*2^5</lambdaCallCount>
		<dCountEach>5*2 + 5*2^5</dCountEach>
		<mapping>5*2 unique (use 2^(5-1) times), 2^5 unique (use 5 times)</mapping>
		<dCountEach>5*2*(1 + 2^(5-1))</dCountEach>
		<pseudocode>
			5.each{ |x| 2.each{ |y| (2^(5-1)).each{ |z| 1 + z } } }
		</pseudocode>
	</example>
	<example>
		<nodeDescription>neural node with 100 childs (C=100, but should C=101?)</nodeDescription>
		<lambdaCallCount>some multiple of 100</lambdaCallCount>
		<dCountEach>1 + 1</dCountEach>
		<mapping>1 unique (use 100 times) + 100 unique (use once)</mapping>
	</example>
	<example>
		<nodeDescription>neural node representing a neural network where all nodes are connected to all others (C=100)</nodeDescription>
		<lambdaCallCount>some multiple of 100^2</lambdaCallCount>
		<dCountEach>1 + 2</dCountEach>
		<mapping>1 unique (use 100^2 times) + 2 unique (use 100^2 times)</mapping>
	</example>
	???
</mapNodeChildsToLambdaParameters>